Mobile devices, in contrast to a desktop computer, have smaller screens and more limited input capabilities. Mobile devices usually have a less familiar or more limited input device for directional control of a cursor. For example, a joystick typically enables a user to move a cursor in four discrete directions (N, W, S and E according to compass bearings) or in eight discrete directions (N, NW, W, SW, S, SE, E, NE). These devices are designed to be operated with a thumb of one hand but it is hard to move the thumb smoothly because of its anatomical characteristics, which makes the cursor movement with each actuation of the input device impulsive and of an unpredictable magnitude. This can cause the cursor to over-shoot or under-shoot the desired selectable item in an unpredictable manner. Placing the cursor over a particular selectable item may be a challenging task because of the impulsive jumping movement of cursor. Overshooting may result in the cursor oscillating about the desired selectable item as the user overshoots the selectable from one direction and then from the other direction and undershooting may result in a frustratingly large number of directional input commands being required.
The challenge arising from the impulsive and unpredictable movement of the cursor has been addressed in the Symbian™ Series 60 operating system. In this system, the cursor does not have a ‘free-roaming’ mode in which in can be moved over the display at the complete control of the user, instead the cursor in response to directional user input commands jumps only from one selectable item directly to another selectable item. Although this mechanism may be suitable for selecting icons in a menu having a ‘designed’ layout it is less suitable for navigating to an arbitrary selectable item in the display, such as a character within a text block or a hyperlink in a HTML page.
It would be desirable to provide an intuitive way to of helping a user easily place a cursor over a particular selectable item. This would improve the usability of mobile applications.